package xcu.lxj.nettychat.chat.domain.vo.request;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @Author XinJian Lei
 * @Date 2024/9/21 15:45
 * @Version 1.0
 */

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Schema(name = "聊天消息请求体")
public class ChatMsgReq{

    // 房间号
    @NotNull
    @Schema(description = "房间号",requiredMode = Schema.RequiredMode.REQUIRED)
    private Long roomId;

    /**
     * 消息类型
     * @see xcu.lxj.nettychat.chat.domain.enums.MessageTypeEnum
     */
    @NotNull
    @Schema(description = "消息类型",requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer msgType;

    /**
     * 消息体
     * @see xcu.lxj.nettychat.chat.domain.entity.msg
     * @see TextMsgReq
     */
    @NotNull
    @Schema(description = "消息体",requiredMode = Schema.RequiredMode.REQUIRED)
    private Object body;


}
